html{
    box-sizing: border-box;
}

*, *::before, *::after {
    box-sizing: inherit;
}

body {
    min-height: 100vh;
    margin: 0; /* Important! */
    background:
        linear-gradient(45deg, hsla(340, 100%, 55%, 1) 0%, hsla(340, 100%, 55%, 0) 70%),
        linear-gradient(135deg, hsla(225, 95%, 50%, 1) 10%, hsla(225, 95%, 50%, 0) 80%),
        linear-gradient(225deg, hsla(140, 90%, 50%, 1) 10%, hsla(140, 90%, 50%, 0) 80%),
        linear-gradient(315deg, hsla(35, 95%, 55%, 1) 100%, hsla(35, 95%, 55%, 0) 70%);

    font-family: sans-serif;
}

.wrapper {
    max-width: 500px;
    margin: 0 auto; /* .wrapper 居中 */

    font-size: 20px;
    line-height: 2; /* 即 font-size 的值的两倍 */

    position: relative;
}

a {
    background-color: rgba(0, 0, 0, 0.05);
    border-radius: 20px;

    color: black;
    text-decoration: none;
}

.highlight {
    border-radius: 20px;
    border-bottom: 2px solid white;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    background-color: white;

    position: absolute;
    top: 0;
    left: 0;
    z-index: -1; /* 位于文字下方 */

    display: block;

    transition: all 0.2s;
}

.menu {
    list-style: none;

    padding: 0;
    margin: 100px 0;

    display: flex; /* li 元素由原本的纵向排列改为水平排列，且相互间没有间隔 */
    justify-content: center; /* 水平居中 */
}

.menu a {
    padding: 20px; /* 给 a 标签加上 padding；由 5px 改为 20px 看起来明显一点 */
    margin: 0 20px; /* 给各 a 标签之间加上间距 */

    color: black;

    display: inline-block; /* 加上 inline-block，防止缩小页面时，a 标签出现断层现象 */
}
